#ifndef _LIGHT_H
#define _LIGHT_H

#if __cplusplus
#include "../../Shaders/Defs/types.hlsli"
#include "Light.h"
#endif

#if __cplusplus
struct PointLight : public Light
#else
struct PointLight
#endif
{
	float3 ambientColor;		  // 24
	float3 diffuseColor;		  // 36
    float3 position;			  // 48
	float3 specularColor;		  // 60
	float range;				  // 64
	float3 padding;

#ifdef __cplusplus
	PointLight(void);
	PointLight(Vector3& color, Vector3& position, float range);

	virtual LightType getType(void) const override { return LightType::Point; }
#endif
};

#endif